#include <iostream>
using namespace std;

#include <vector>
#include <algorithm>

//定义坐标类型
struct Point
{
    int x;
    int y;
    // 重载 == 操作符
    bool operator==(const Point &other)
    {
        return x == other.x && y == other.y;
    }
};

int main()
{
#if 0    
    // vector容器
    vector<int> myVec1 = {11, 23, 54, 67, 31, 9, 23};
    vector<int> myVec2 = {11, 23, 54, 67, 31, 9, 23};
    bool res = equal(myVec1.begin(), myVec1.end(), myVec2.begin());
    cout << "res:" << res << endl;
#endif

#if 1
    // vector容器
    vector<Point> Vec1 = {{11, 23}, {23, 54}, {54, 67}, {31, 9}, {9, 23}};
    vector<Point> Vec2 = {{11, 23}, {23, 54}, {54, 67}, {31, 9}, {9, 23}};
    bool res = equal(Vec1.begin(), Vec1.end(), Vec2.begin());
    cout << "res:" << res << endl;
#endif
}
